package pub.xspace.nova.system.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import pub.xspace.nova.system.domain.SysRole;

/**
 * 系统角色持久化接口
 * 
 * @author HeJianrong
 */
@Mapper
public interface SysRoleMapper {

	/**
	 * 根据ID查找角色对象
	 * 
	 * @param id 角色ID
	 * @return List 角色对象列表
	 */
	SysRole selectById(String id);

	/**
	 * 根据用户ID查找角色对象列表
	 * 
	 * @param userId 用户ID
	 * @return List 角色对象列表
	 */
	List<SysRole> selectByUserId(String userId);

	/**
	 * 根据过滤参数查找角色对象列表
	 * 
	 * @param role 过滤条件
	 * @return List 角色对象列表
	 */
	List<SysRole> selectByParams(SysRole role);

	/**
	 * 插入角色对象
	 * 
	 * @param role 需要插入的角色对象
	 * @return int 受影响的记录条数
	 */
	int insert(SysRole role);

	/**
	 * 根据ID更新角色对象
	 * 
	 * @param role 需要更新的角色对象
	 * @return int 受影响的记录条数
	 */
	int update(SysRole role);

	/**
	 * 根据ID删除角色对象
	 * 
	 * @param id 需要删除的角色ID
	 * @return int 受影响的记录条数
	 */
	int deleteById(String id);
}
